iT邦幫忙

2024 iThome 鐵人賽

DAY 3
0
自我挑戰組

C# 和 SQL 探索之路 - 3系列 第 3

Day 3: C# Null Reference Types

  • 分享至 

  • xImage
  •  

C# Nullable Reference Types 是在 C# 8.0 提供的功能。可以選擇是否要啟用。(.NET 6.0 以後預設啟用)

啟用前,參考型別預設可為 Null,但是容易在傳入 Null 時,引發 NullReferenceException;啟用後,參考型別預設變得不能 Null,必須在型別後面加入 ?,宣告成 Nullable 型別才可為 Null。

範例可參考 C# 8 的 Nullable Reference Types - Huan-Lin 學習筆記 的程式碼:

string str1 = "hello"; // str1 是不可為 null 的字串
string? str2 = null;   // str2 是可為 null 的字串

部分舊的程式碼在編譯時可能會出現類似以下的警告:

Warning CS8618: Non-nullable field 'field-name' is uninitialized.

除了改寫以外,可以使用前置處理指示詞壓制警告訊息 (須謹慎使用):

#pragma warning disable CS8618 
...
#pragma warning restore CS8618

參考資料


上一篇
Day 2: C# Yield 關鍵字
下一篇
Day 4: C# Top Level Statement
系列文
C# 和 SQL 探索之路 - 330
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言